#include<bits/stdc++.h>
using namespace std;
const int maxn = 1e5+7;
int trie[maxn*30][2], a[maxn], idx;
int n;
void insert(int x) {
  int p = 0;
  for(int i=30; i>=0; i--) {
    int c = x>>i & 1;
    if(!trie[p][c]) trie[p][c]=++idx;
    p = trie[p][c];
  }
}
int search(int x) {
  int p = 0, ans = 0;
  for(int i=30; i>=0; i--) {
    int c = x>>i & 1;
    if(trie[p][!c]) {
      ans |= 1<<i;
      p = trie[p][!c];
    }
    else p = trie[p][c];
  }
  return ans;
}
int main() {
  cin>>n;
  for(int i=0; i<n; ++i) cin>>a[i];
  for(int i=0; i<n; ++i) {
    insert(a[i]);
  }
  int res = 0;
  for(int i=0; i<n; ++i) {
    res = max(res, search(a[i]));
  }
  cout<<res<<'\n';
}
